package de.greenrobot.daoexample.model;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * Created by squall on 2015/12/31.
 */
public class PostItem implements Serializable {
    private String cp_id;
    private String dp_id;
    private String wp_id;
    private String wns_id;
    private String post_token;
    private String type;
    private String work;
    private String cover;
    private String path;
    private List<Multi> multi = new ArrayList<>();
    private List<Character> character = new ArrayList<>();
    private List<ChartperInfo> paragraphs;
    private Optional optional = new Optional();
    private Authority authority = new Authority();
    private String title;
    private List<String> content;
    private String plain;

    public class Optional implements Serializable {
        private String title = "";
        private String content = "";
        private String intro;
        private List<String> tags = new ArrayList<String>();
        private List<String> character = new ArrayList<>();

        public String getTitle() {
            return title;
        }

        public String getContent() {
            return content;
        }

        public List<String> getTags() {
            return tags;
        }

        public void setTitle(String title) {
            this.title = title;
        }

        public void setContent(String content) {
            this.content = content;
        }

        public void setTags(List<String> tags) {
            this.tags = tags;
        }

        public List<String> getCharacter() {
            return character;
        }

        public void setCharacter(List<String> character) {
            this.character = character;
        }

        public String getIntro() {
            return intro;
        }

        public void setIntro(String intro) {
            this.intro = intro;
        }

        @Override
        public String toString() {
            return "Optional{" +
                    "title='" + title + '\'' +
                    ", content='" + content + '\'' +
                    ", tags=" + tags +
                    '}';
        }
    }

    public class Authority implements Serializable {
        private String view = "all";
        private Save save = new Save();
        private Transmit transmit = new Transmit();
        private Payment payment=new Payment();

        public class Save implements Serializable {
            private boolean download = true;
            private boolean water_mark = true;

            public boolean isDownload() {
                return download;
            }

            public boolean isWater_mark() {
                return water_mark;
            }

            public void setDownload(boolean download) {
                this.download = download;
            }

            public void setWater_mark(boolean water_mark) {
                this.water_mark = water_mark;
            }

            @Override
            public String toString() {
                return "Save{" +
                        "download=" + download +
                        ", water_mark=" + water_mark +
                        '}';
            }
        }

        public class Transmit implements Serializable {
            private boolean no_trans = false;
            private boolean no_modify = false;

            public boolean isNo_trans() {
                return no_trans;
            }

            public boolean isNo_modify() {
                return no_modify;
            }

            public void setNo_trans(boolean no_trans) {
                this.no_trans = no_trans;
            }

            public void setNo_modify(boolean no_modify) {
                this.no_modify = no_modify;
            }

            @Override
            public String toString() {
                return "Transmit{" +
                        "no_trans=" + no_trans +
                        ", no_modify=" + no_modify +
                        '}';
            }
        }

        public class Payment implements Serializable{
            private boolean accept_pay;

            public boolean isAccept_pay() {
                return accept_pay;
            }

            public void setAccept_pay(boolean accept_pay) {
                this.accept_pay = accept_pay;
            }
        }

        public String getView() {
            return view;
        }

        public Save getSave() {
            return save;
        }

        public Transmit getTransmit() {
            return transmit;
        }

        public void setView(String view) {
            this.view = view;
        }

        public void setSave(Save save) {
            this.save = save;
        }

        public void setTransmit(Transmit transmit) {
            this.transmit = transmit;
        }

        public Payment getPayment() {
            return payment;
        }

        public void setPayment(Payment payment) {
            this.payment = payment;
        }

        @Override
        public String toString() {
            return "Authority{" +
                    "view='" + view + '\'' +
                    ", save=" + save +
                    ", transmit=" + transmit +
                    '}';
        }
    }

    public String getCp_id() {
        return cp_id;
    }

    public String getPost_token() {
        return post_token;
    }

    public String getType() {
        return type;
    }

    public String getWork() {
        return work;
    }

    public List<Multi> getMulti() {
        return multi;
    }

    public List<Character> getCharacter() {
        return character;
    }

    public Optional getOptional() {
        return optional;
    }

    public Authority getAuthority() {
        return authority;
    }

    public void setCp_id(String cp_id) {
        this.cp_id = cp_id;
    }

    public void setPost_token(String post_token) {
        this.post_token = post_token;
    }

    public void setType(String type) {
        this.type = type;
    }

    public void setWork(String work) {
        this.work = work;
    }

    public void setMulti(List<Multi> multi) {
        this.multi = multi;
    }

    public void setCharacter(List<Character> character) {
        this.character = character;
    }

    public void setOptional(Optional optional) {
        this.optional = optional;
    }

    public void setAuthority(Authority authority) {
        this.authority = authority;
    }

    public String getDp_id() {
        return dp_id;
    }

    public void setDp_id(String dp_id) {
        this.dp_id = dp_id;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public List<String> getContent() {
        return content;
    }

    public void setContent(List<String> content) {
        this.content = content;
    }

    public String getWp_id() {
        return wp_id;
    }

    public void setWp_id(String wp_id) {
        this.wp_id = wp_id;
    }

    public String getWns_id() {
        return wns_id;
    }

    public void setWns_id(String wns_id) {
        this.wns_id = wns_id;
    }

    public String getCover() {
        return cover;
    }

    public void setCover(String cover) {
        this.cover = cover;
    }

    public String getPath() {
        return path;
    }

    public void setPath(String path) {
        this.path = path;
    }

    public List<ChartperInfo> getParagraphs() {
        return paragraphs;
    }

    public void setParagraphs(List<ChartperInfo> paragraphs) {
        this.paragraphs = paragraphs;
    }

    public String getPlain() {
        return plain;
    }

    public void setPlain(String plain) {
        this.plain = plain;
    }

    @Override
    public String toString() {
        return "PostItem{" +
                "cp_id='" + cp_id + '\'' +
                ", post_token='" + post_token + '\'' +
                ", type='" + type + '\'' +
                ", work='" + work + '\'' +
                ", multi=" + multi +
                ", character=" + character +
                ", optional=" + optional +
                ", authority=" + authority +
                '}';
    }

}
